home *** CD-ROM | disk | FTP | other *** search
/ SPACE 1 / SPACE - Library 1 - Volume 1.iso / program / 441 / vdisrc12 / vdiinqr2.s < prev    next >
Text File  |  1990-11-23  |  4KB  |  99 lines

  1.  
  2. ;*========================================================================
  3. ;*
  4. ;* VDIFAST Public Domain VDI bindings.
  5. ;*
  6. ;*========================================================================
  7.         
  8.           .iif      !(^^macdef VContrl),.include  "vdimacro.s"
  9.           
  10. ;*************************************************************************
  11. ;*
  12. ;* Inquiry functions.
  13. ;*  Polyline- and polymarker-related functions.
  14. ;*
  15. ;*************************************************************************
  16.           
  17. ;*------------------------------------------------------------------------
  18. ;* Inquire polyline attributes.  
  19. ;*------------------------------------------------------------------------
  20.           
  21. _vql_attributes::
  22.           .cargs    #8,.handle.w,.attrib.l
  23.           link      a6,#-14             ;* Allocate intout[5], ptsout[2].
  24.  
  25.           VContrl   #35
  26.           
  27.           pea       -14(a6)             ;* -> ptsout
  28.           pea       -10(a6)             ;* -> intout
  29.           subq.l    #8,sp               ;* -> ptsin
  30.           pea       16(sp)              ;* -> contrl
  31.  
  32.           moveq.l   #$73,d0
  33.           move.l    sp,d1
  34.           trap      #2
  35.  
  36.           move.l    .attrib(a6),a0      ;* Return values in attrib array...
  37.           move.l    -10(a6),(a0)+       ;* attr[0]=intout[0],attr[1]=intout[1]
  38.           move.w    -6(a6),(a0)+        ;* attr[2]=intout[2]
  39.           move.w    -14(a6),(a0)        ;* attr[3]=ptsout[0]
  40.  
  41.           unlk      a6
  42.           rts
  43.  
  44. ;*------------------------------------------------------------------------
  45. ;* Inquire polymarker attributes.
  46. ;*------------------------------------------------------------------------
  47.  
  48. _vqm_attributes::
  49.           .cargs    #8,.handle.w,.attrib.l
  50.           link      a6,#-10
  51.  
  52.           VContrl   #36
  53.           
  54.           pea       -10(a6)             ;* -> ptsout
  55.           pea       -6(a6)              ;* -> intout
  56.           subq.l    #8,sp               ;* -> ptsin
  57.           pea       16(sp)              ;* -> contrl
  58.  
  59.           moveq.l   #$73,d0
  60.           move.l    sp,d1
  61.           trap      #2
  62.  
  63.           move.l    .attrib(a6),a0      ;* Return values in attrib array...
  64.           move.l    -6(a6),(a0)+        ;* attr[0]=intout[0],attr[1]=intout[1]
  65.           move.w    -2(a6),(a0)+        ;* attr[2]=intout[2]
  66.           move.w    -8(a6),(a0)         ;* attr[3]=ptsout[1]
  67.  
  68.           unlk      a6
  69.           rts
  70.  
  71. ;*------------------------------------------------------------------------
  72. ;* Inquire fill area attributes.
  73. ;*------------------------------------------------------------------------
  74.           
  75. _vqf_attributes::
  76.           .cargs    #8,.handle.w,.attrib.l
  77.           link      a6,#-10             ;* Allocate intout[5].
  78.  
  79.           VContrl   #36
  80.  
  81.           subq.l    #4,sp               ;* -> ptsout
  82.           pea       -10(a6)             ;* -> intout
  83.           subq.l    #8,sp               ;* -> intin
  84.           pea       16(sp)              ;* -> contrl
  85.  
  86.           moveq.l   #$73,d0
  87.           move.l    sp,d1
  88.           trap      #2
  89.           
  90.           move.l    .attrib(a6),a0      ;* Return values in attrib array
  91.           lea       -10(a6),a1          ;* from 1st 4 elements of intout.
  92.           move.l    (a1)+,(a0)+         ;* attr[0]=intout[0],attr[1]=intout[1]
  93.           move.l    (a1)+,(a0)+         ;* attr[2]=intout[2],attr[3]=intout[3]
  94.  
  95.           unlk      a6
  96.           rts
  97.  
  98. ;       end of code
  99.